package com.valueObjects;

import java.io.IOException;
import java.util.Date;

/**
 *
 * @author $Leandro$
 */
public class PessoaFisica extends JMESerializable{
    
    public String nome;
    
    public String cpf;
    
    public String passwd;
    
    public String dataNascimento;
    
    //Formato telefone = (0XX)- YYYY-YYYY
    public String telefone;
    
    public String sexo;
    
    public String tituloEleitoral;
    
    public String email;
    
    public String pais;
    
    public String estado;
    
    public String municipio;
    
    public String bairro;
    
    public String logradouro;
    
    public String numero;
    
    public String complemento;
    
    public String cep;
    
    public ListaBens bens;
    
    public RestituicaoVO restituicao;
    
    public PessoaFisica() {
    }
    
    public byte[] serialize() throws IOException, InterruptedException {
        this.initSerialize();
        
        dataOut.writeUTF(nome);
        dataOut.writeUTF(dataNascimento);
        dataOut.writeUTF(telefone);
        dataOut.writeUTF(sexo);
        dataOut.writeUTF(tituloEleitoral);
        dataOut.writeUTF(email);
        
        // Endereco..
        dataOut.writeUTF(pais);
        dataOut.writeUTF(estado);
        dataOut.writeUTF(municipio);
        dataOut.writeUTF(bairro);
        dataOut.writeUTF(logradouro);
        dataOut.writeUTF(numero);
        dataOut.writeUTF(complemento);
        dataOut.writeUTF(cep);
        
        return binayOut.toByteArray();
    }
    
    public void unserialize(byte[] data) throws IOException, InterruptedException {
        this.initUnSerialize(data);
        
        if(dataIn.available() > 0) {            
            nome = dataIn.readUTF();
            dataNascimento = dataIn.readUTF();
            telefone = dataIn.readUTF();
            sexo = dataIn.readUTF();
            tituloEleitoral = dataIn.readUTF();
            email = dataIn.readUTF();
            
            // Endereco..
            pais = dataIn.readUTF();
            estado = dataIn.readUTF();
            municipio = dataIn.readUTF();
            bairro = dataIn.readUTF();
            logradouro = dataIn.readUTF();
            numero = dataIn.readUTF();
            complemento = dataIn.readUTF();
            cep = dataIn.readUTF();
        }
    }
}
